This invention relates to programmable logic devices, and more particularly, to redundancy circuitry for repairing programmable logic devices containing defects.
Programmable logic devices are integrated circuits that may be programmed to perform custom logic functions. Integrated circuit fabrication techniques are not perfect, so occasionally a programmable logic device may be fabricated with a defect. Unless the defect can be repaired before the logic device is put into use, the logic device must be discarded. Discarding such a device is wasteful, particularly when a defect is relatively minor. As a result, various redundancy schemes have been developed that allow spare circuitry to be switched into place to repair a defective portion of a circuit.
The difficulty of implementing a suitable redundancy scheme for a given logic device architecture depends on the attributes of the architecture. For example, there are difficulties associated with providing redundancy for programmable logic devices that use interleaved multiplexer circuitry to distribute signals to logic array blocks. Because adjacent logic array blocks share signal routing resources in such arrangements, the occurrence of a defect in one logic array block can affect an adjacent and otherwise defect-free logic array block. Although it might be possible to use a redundancy scheme in which both of these affected logic array blocks are replaced upon detection of a defect, such a scheme would necessarily involve bypassing at least one defect-free logic array block. A redundancy scheme that uses logic resources more efficiently would be desirable.
It is therefore an object of the present invention to provide a redundancy arrangement for programmable logic devices with interleaved input circuits.